﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace LectorExpediciones
{
    class GestorVentanas
    {
        private static GestorVentanas instancia;
        private VentanaPrincipal formularioPrincipal;

        public static GestorVentanas getInstancia() {
            if (instancia == null)
                instancia = new GestorVentanas();
            return instancia;
        }

        public void setFormulario(VentanaPrincipal panel)
        {
            formularioPrincipal = panel;
        }

        public void cambiarPantalla(UserControl u, string cliente, string codExp, DateTime fecha)
        {           
            u.Anchor = (AnchorStyles.Left | AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Right);//  | AnchorStyles.Left);            
            
            formularioPrincipal.cambiarControl(u);            
            if (u.GetType() == typeof(ControlLotes))            
            {               
                ControlLotes cLotes = (ControlLotes)u;
                cLotes.setDatosCliente(cliente, codExp, fecha);                             
            } 

        }

        public int getWidthVentanaPrincipal()
        {
            return formularioPrincipal.Width;
        }

        public int getHeightVentanaPrincipal()
        {
            return formularioPrincipal.Height;
        }

        private void cambiarTituloBarraVentana(string cadena)
        {
            formularioPrincipal.Text = cadena;
        }



        internal bool estaModificadaExpedicion()
        {
            if (formularioPrincipal.Controls[0].GetType() == typeof(ControlLotes))
            {
                ControlLotes control = (ControlLotes)formularioPrincipal.Controls[0];
                if (control.estaModificadaExpedicion())
                    return true;
            }
            return false;
        }

        internal void cambiarPantalla(ControlExpediciones controlExpediciones)
        {
            cambiarPantalla(controlExpediciones, "", "", new DateTime());
        }
    }
}
